package com.beerandjesus.sportofkings.handicapper.model;

public interface RaceAnalysisResultVO {
	
	/**
	 * Get the race type
	 * @return
	 */
	public RaceType getRaceType();
	
	/**
	 * Get the track code
	 * @return
	 */
	public String getTrackCode();
	
	/**
	 * Get the name of this race
	 * @return
	 */
	public String getRaceName();
	
	/**
	 * Get the purse amount
	 * @return
	 */
	public String getPurse();
	
	/**
	 * Get the claiming price, if any
	 * @return
	 */
	public String getClaimingPrice();
	
	/**
	 * Get the race length
	 * @return
	 */
	public String getDistance();
	
	/**
	 * Get the track surface
	 * @return
	 */
	public TrackSurface getSurface();
	
	/**
	 * Get the historical par speed for this kind of race 
	 * @return
	 */
	public String getSpeedPar();

	/**
	 * Get the number of horses in the field
	 * @return
	 */
	public abstract int getFieldCount();
	
	/**
	 * Get the table of analysis results
	 * @return
	 */
	public ResultsTable getResultsTable();

	/**
	 * Get the race date
	 * @return
	 */
	public abstract String getRaceDate();

	/**
	 * Get the race number
	 * @return
	 */
	public abstract String getRaceNumber();

	/**
	 * Get the race post times
	 * @return
	 */
	public abstract String getPostTimes();

    /**
     * Get the analysis result output for this race
     * in simple format.
     * @return
     */
    public abstract String getOutputSimpleFormat();

}
